package aboutDependency.demo1.loop;

/**
 * 循环依赖案例
 * 在 ClassA 的构造函数中，  它需要创建一个 ClassB 的实例并持有它的引用。
 * 而在 ClassB 的构造函数中，它需要创建一个 ClassA 的实例并持有它的引用。
 * 这样就形成了一个循环依赖。
 * 在程序中使用 ClassA 或 ClassB 时，
 * 如果没有采取特殊措施，就会导致对象互相等待，无法正常初始化，从而导致程序崩溃。
 * @author GTP3.5
 */
public class DependencyLoopClassA {
    private DependencyLoopClassB b;
    //构造函数中,需要创建一个 ClassB 的实例并持有它的引用
    public DependencyLoopClassA() {
        b = new DependencyLoopClassB();
    }

    public void doSomething() {
//         do something with b
    }
}
